Currently available as recording apparatuses for recording data in a personal computer (hereinafter referred to as “PC”) include floppy disk drives (hereinafter referred to as “FDD”), hard disk drives (hereinafter referred to as “HDD”) and CD-ROM units, etc. These recording apparatuses are connected with PCs via interfaces called IDE, SCSI, etc.
Operations of such a recording apparatus which is connected with a PC, hardware inside the PC, etc., are controlled by software called “Operating system (hereinafter referred to as “OS”)” which is represented by Windows, MacOS and UNIX. Introduced in the OS is a concept of file system, for the purpose of handling data recorded on a recording medium of each recording apparatus, such as an FDD and a CD-ROM unit, as a file. A file system is a system in which each piece of data partitioned as a file bears information, such as a file name, a location at which the file data are recorded, a file length, a recording date/hour and the like, to thereby organize and manage such that data are treated as a file.
For example, a Windows PC is formed by hardware, kernel mode software serving as the OS and user mode software serving as applications. The OS known as Windows98 uses a file system called “FAT (File Allocation Table)” for an FDD and an HDD and a file system called “CDFS (CD File System)” for a CD-ROM unit. Software which controls the file systems is a file system driver (hereinafter referred to as “FSD”), and the FDS is contained in the OS. Only through the FSD, an access can be made to data (file), e.g., reading from a medium in the recording apparatus and writing recorded data (file).
By the way, digital interfaces based on new standards such as IEEE1394 Standard have been introduced to PCs, which has made it possible to connect a PC with equipment such as a VCR (for instance, DV (Digital Video Cassette)) which records and reproduces video and speech.
However, since DVs are not compatible with file systems, even when a DV is connected with a PC, a problem remains that the PC can not treat a content which is recorded in the DV as a file, and therefore, a file system for the DV (DV File system, abbreviated as DVFS) and a file system driver for the PC to handle the DVFS are necessary.
Further, even with the file system introduced to the DV, an application writes data in a file through the FSD by means of the following or repetition of the same.
(1) File OPEN instruction—designation of a file name
(2) WRITE instruction to write in the opened file—designation of a write start position, a write data size and data-to-write
(3) File CLOSE instruction
The application and the OS determine the order of writing, the write size and the write timing, which is viewed from the DV as an asynchronous random request. In a similar manner, an application reads data from a file through the FSD by means of the following or repetition of the same:
(1) File OPEN instruction—designation of a file name
(2) READ instruction to read from the opened file—designation of a read start position and a read data size
(3) File CLOSE instruction
The application and the OS determine the order of reading, the read size and the read timing, which is viewed from the DV as an asynchronous random request.
Sending and receiving stream data, the DV has a problem that it is impossible to respond to an asynchronous random access described above. Hence, a mechanism for responding to such an access is needed.
An action of switching operations little by little is not a premise for a magnetic tape recording machine of the sequential type such as a DV, and hence, even if the mechanism operates minutely to respond to a random access, as an operation mode for the mechanism is changed more frequently for which processing takes long, the mechanism and a tape get damaged. In addition, while such a random access is necessary to execute special processing such as editing, if the purpose is only to reproduce and display or copy AV data in real time, using stream data all at a time is more efficient. It is also necessary to appropriately accommodate an application for accessing asynchronously and at random and an application for handling stream data all at once.
On the other hand, for the purpose of connecting PCs with external equipment via IEEE1394 I/Fs, a WDM driver based on the WDM (Windows Driver Model) architecture has been introduced for Windows98 as anew driver which complies with IEEE1394 which is different from existing architectures, which has created an environment called DirectShow for handling stream data, such as video/audio data, on a PC. Although fusion of PCs and digital video/audio equipment, such as DVs, has been promoted in this manner, since PCs have never initially considered handling synchronous data, the current mechanisms can not handle real-time data without a break.
In other words, while sending from a PC to a DV demands to send a fixed amount of data for each video frame such that predetermined frame intervals are maintained, in the case that a part or all of processing is realized by software on the PC, processing of one frame does not complete in a constant period of time. Although a PC has a mechanism to instruct a processing time for processing data per unit, if a certain frame has used a long processing time, the subsequent instruction is to delay a processing time of the next frame rather than giving a higher priority to processing of the next frame. Hence, it is not possible to keep sending while maintaining predetermined frame intervals.
A number of digital video/audio apparatuses, including not only DVs but also set top boxes for receiving MPEG2-TS data (hereinafter referred to as “STB”), are capable of transferring data with other equipment by means of IEEE1394 I/Fs.
Further, from a standpoint of protection of copy right, for transmission of AV data, a scheme of transmitting copy right information on a header of an IEEE1394 transmission packet was proposed in “5C Digital Transmission Content Protection White Paper” in July, 1998. Since a current PC does not have a mechanism to deal with copy right information regarding AV data, a new mechanism to handle AV data in accordance with copy right information is necessary to send and receive AV data between PCs and other AV equipment.